"""
基础对话演示

这个示例展示了 Agent 的基本对话能力，包括：
1. 简单问答
2. 上下文理解
3. 记忆管理
"""

import asyncio
import sys
from pathlib import Path

# 添加项目根目录到路径
sys.path.insert(0, str(Path(__file__).parent.parent))

from agent.core import Agent, AgentConfig
from rich.console import Console


async def basic_chat_demo():
    """基础对话演示"""
    console = Console()
    
    console.print("🎯 基础对话演示\n", style="bold cyan")
    
    # 创建 Agent
    config = AgentConfig(
        name="ChatBot",
        verbose=True,
        enable_memory=True
    )
    agent = Agent(config)
    
    # 对话示例
    conversations = [
        "你好，我是新用户",
        "你能做什么？",
        "记住我的名字是张三",
        "我刚才说我叫什么名字？",
        "解释一下什么是 AI Agent",
        "谢谢你的解释"
    ]
    
    for i, message in enumerate(conversations, 1):
        console.print(f"\n[{i}] 用户: {message}", style="blue")
        
        response = await agent.process_input(message)
        console.print(f"[{i}] Agent: {response}", style="green")
        
        # 短暂停顿以便观察
        await asyncio.sleep(1)
    
    console.print("\n✅ 基础对话演示完成", style="bold green")


if __name__ == "__main__":
    asyncio.run(basic_chat_demo())